/**
 * @Project : ProgrammingExercises
 * @Package : Leetcode
 * @File : Q2526.java
 * @Author : WangRuoyu
 * @Date 2023/1/25 10:19
 */

package leetcode;

//public class Q2526 {
//    int value;
//    int k;
//    int tmp = 0;
//
////    public DataStream(int value, int k) {
//    public Q2526(int value, int k) {
//        this.value = value;
//        this.k = k;
//    }
//
//    public boolean consec(int num) {
//        if (num == value) {
//            tmp++;
//        } else {
//            tmp = 0;
//        }
//        return tmp >= k;
//    }
//
//    public static void main(String[] args) {
//        int value = 4;
//        int k = 3;
//        Q2526 sl = new Q2526(value, k);
//    }
//}


/**
 * 循环数组
 **/
public class Q2526 {
    int v;
    int k;
    int[] a;
    int p = 0;

//    public DataStream(int value, int k) {
    public Q2526(int value, int k) {
        v = value;
        a = new int[k];
        this.k = k;
    }

    public boolean consec(int num) {
        a[p] = num;
        p = (p + 1) % k;
        for (int i = 0; i < k; i++) {
            if (a[i] != v) {
                return false;
            }
        }
        return true;
    }

    public static void main(String[] args) {
        int value = 4;
        int k = 3;
        Q2526 sl = new Q2526(value, k);
    }
}
